package com.ruoyi.lab.mapper;

import com.ruoyi.lab.domain.JacLabSupplyFile;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * SupplyFileMapper接口
 * 
 * @author ruoyi
 * @date 2021-05-06
 */
public interface JacLabSupplyFileMapper
{
    /**
     * 查询SupplyFile
     * 
     * @param id SupplyFileID
     * @return SupplyFile
     */


    /**
     * 查询Supplyid
     *
     * @param describe describe
     * @return SupplyFile
     */
    public Long selectJacLabSupplyBySupplyId(String describe);

    /**
     * 查询permissions
     *
     * @param userid userid
     * @return SupplyFile
     */
    public Long selectPermissions(@Param("userid")String userid,@Param("role")Long role);

    /**
     * 查询role
     *
     * @param rolename rolename
     * @return SupplyFile
     */
    public Long selectRole(String rolename);

    /**
     * 查询SupplyFile列表
     *
     * @param jacLabSupplyFile SupplyFile
     * @return SupplyFile集合
     */
    public List<JacLabSupplyFile> selectJacLabSupplyList(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 供应商查询SupplyFile列表
     *
     * @param jacLabSupplyFile SupplyFile
     * @return SupplyFile集合
     */
    public List<JacLabSupplyFile> selectJacLabSupplyListBySupply(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 查询SupplyFile列表
     * 
     * @param jacLabSupplyFile SupplyFile
     * @return SupplyFile集合
     */
    public List<JacLabSupplyFile> selectJacLabSupplyFileList(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 查询SupplyFile列表文件是否存在
     *
     * @return SupplyFile集合
     */
    public boolean selectJacLabSupplyFileListHas(@Param("supplyid")Long supplyid,@Param("fileid")String fileid);

    /**
     * 新增SupplyFile
     *
     * @param jacLabSupplyFile SupplyFile
     * @return 结果
     */
    public int insertJacLabSupply(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 新增SupplyFile
     *
     * @return 结果
     */
    public int insertJacLabSupplyFile(@Param("supplyid")Long supplyid,@Param("fileid")String fileid,@Param("filename")String filename);

    /**
     * 修改SupplyFile
     *
     * @param jacLabSupplyFile SupplyFile
     * @return 结果
     */
    public int updateJacLabSupply(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 修改SupplyFile
     * 
     * @param jacLabSupplyFile SupplyFile
     * @return 结果
     */
    public int updateJacLabSupplyFile(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 修改SupplyFile权限
     *
     * @param jacLabSupplyFile SupplyFile
     * @return 结果
     */
    public int updateJacLabSupplyFilePower(JacLabSupplyFile jacLabSupplyFile);

    /**
     * 删除SupplyFile
     * 
     * @param fileId SupplyFileID
     * @return 结果
     */
    public int deleteJacLabSupplyFileById(String fileId);

    /**
     * 批量删除SupplyFile
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteJacLabSupplyByIds(Long ids);

    /**
     * 批量删除SupplyFile
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteJacLabSupplyFileByIds(Long ids);

    public  String selectUserTypeById(String userId);
}
